1. Field
The following description relates to methods and apparatuses for determining a work-group size by using an access pattern to a memory that is shared by work-groups.
2. Description of Related Art
OpenCL is an open-type general purpose parallel computing framework, in which programs executing on multiplex platforms (i.e., a plurality of central processing units (CPUs), graphic processing units (GPUs) and so on) may be created, and the ability of the GPU may be extended to a general purpose graphic processing unit (GPGPU) that is used in areas other than the graphic processing.
Meanwhile, a host program which is executed on a host in the OpenCL program defines a work space to execute a kernel, and a work item corresponds to each point in the work space. A work-group represents a group of several work items, the work space is divided into work-groups. Furthermore, each of the work-groups may be executed at one of computing units on a device in which a kernel is executed. Here, the size of the work-group is a factor having a great effect on the performance of the device because the size of the work-group may determine a resource usage of the device and a load balance between the computing units.